package com.secsbrain.cmdb.client.iface;

import java.util.List;

import com.secsbrain.cmdb.client.model.DeployEngineDto;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;

import com.secsbrain.common.ResponseVo;

/**
 * 运维相关服务
 *
 * @author zhaoyi
 */
@FeignClient("service-cmdb")
public interface OpsInfoService {
	
	/**
     * 功能描述: <br>
     * 查询所有环境列表
     *
     * @return
     */
    @RequestMapping(value = "/cmdbservice/queryEnvList", method = RequestMethod.GET)
	ResponseVo<List<String>> queryEnvList();

    /**
     * 功能描述: <br>
     * 根据环境名查询发布引擎信息
     *
     */
    @RequestMapping(value = "/cmdbservice/queryDeployEngineByEnv", method = RequestMethod.GET)
    ResponseVo<DeployEngineDto> queryDeployEngineByEnv(@RequestParam("envName")String envName);
    
    /**
     * 功能描述: <br>
     * 查询线上/线下环境列表
     *
     * @return
     */
    @RequestMapping(value = "/cmdbservice/queryEnvListByFlag", method = RequestMethod.GET)
	ResponseVo<List<String>> queryEnvListByFlag(@RequestParam("flag")String flag);
    
    /**
     * 功能描述: <br>
     * 查询所有镜像选项
     *
     * @return
     */
    @RequestMapping(value = "/cmdbservice/queryImageOptionList", method = RequestMethod.GET)
	ResponseVo<List<String>> queryImageOptionList();
    
}
